package cn.nawang.ebeim.uc;

import java.io.File;

import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

import cn.nawang.ebeim.client.util.PathUtil;
import cn.nawang.ebeim.uc.util.CheckProcessRunCmd;
import cn.nawang.ebeim.uc.util.ConfigUtil;
import cn.nawang.ebeim.uc.util.ErrorWin;
import cn.nawang.ebeim.uc.util.SystemUtil;

/**
 * Hello world!
 *
 */
public class App {
  private Display waitDisplay;
  private Shell waitShell;
  
  public void start() {
    CheckProcessRunCmd cprc = new CheckProcessRunCmd();
    boolean isOpenPro = cprc.checkPro();
    if(isOpenPro){
      new ErrorWin();
    }else{
      ProgressBar pb = new ProgressBar();
      pb.start();
    }
  }

  /**
   * 
   * @Description: 启动程序打开ui网页
   * void 
   * @date 2015年11月13日下午3:14:19
   *
   * @修改人 
   * @修改日期
   */
  public void openWeb() {
    if (java.awt.Desktop.isDesktopSupported()) {
      try {
        // 创建一个URI实例
        java.net.URI uri = java.net.URI
            .create("http://127.0.0.1:" + ConfigUtil.getRestServerPort() + "/web/html/login.html");
        // 获取当前系统桌面扩展
        java.awt.Desktop dp = java.awt.Desktop.getDesktop();
        // 判断系统桌面是否支持要执行的功能
        if (dp.isSupported(java.awt.Desktop.Action.BROWSE)) {
          // 获取系统默认浏览器打开链接
          dp.browse(uri);
        }


      } catch (Exception e) {
        e.printStackTrace();
      }
    }
  }
  
  
  public void openUI(){
    new Dngj();
  }

  private String path(){
    File rootDir = new File(PathUtil.getClassPath());
    String imgPath = rootDir + "/others/";
    return imgPath;
  }
  
  
    public void closeWait(){
      waitShell.close();
      waitDisplay.dispose();
      waitShell.dispose();
    }
  
  // 设置窗体居中
  private void setUIcenter() {
    waitShell.setLocation(
        Display.getCurrent().getClientArea().width / 2 - waitShell.getShell().getSize().x / 2,
        Display.getCurrent().getClientArea().height / 2 - waitShell.getSize().y / 2);
  }
  
  public static void main(String[] args) throws Exception {
    SystemUtil.initLog();
    cn.nawang.ebeim.client.util.SystemUtil.initLog();
    App app = new App();
    try {
      app.start();
    } catch (Exception e) {
      e.printStackTrace();
    }
    // app.start();

  }
}
